//格式化时间
function formatStr() {
  var str = arguments[0];
  var arr = [].splice.call(arguments, 1, arguments.length - 1);
  return str.replace(/\{(\d+)\}/g, function(s, i) {
    if (arr[i] != "0") {
      return arr[i] || "";
    } else {
      return arr[i];
    }
  });
}
function show(date) {
  //date 是 js的日期对象
  var now = +new Date();
  var target = date.getTime();
  var diff = now - target; //差距
  var showArr = [
    {
      txt: "{0}分钟前",
      times: 60 * 1000,
      num: 30 * 60 * 1000
    },
    {
      txt: "半小时前",
      times: 60 * 1000,
      num: 60 * 60 * 1000
    },
    {
      txt: "{0}小时前",
      times: 60 * 60 * 1000,
      num: 24 * 60 * 60 * 1000
    }
  ];
  var txt = "{0}天前",
    num = 0,
    times = 24 * 60 * 60 * 1000;
  for (var i = 0; i < showArr.length; i++) {
    var item = showArr[i];
    if (diff < item.num) {
      txt = item.txt;
      times = item.times;
      break;
    }
  }
  var show = Math.floor(diff / times);
  txt = formatStr(txt, show);
  return txt;
}
var targetDate = new Date("2021-12-1 11:40:00");
console.log(show(targetDate));

//浏览器内核
function browser() {
  // 取得浏览器的userAgent字符串
  var userAgent = navigator.userAgent;
  // 判断是否Opera浏览器
  var isOpera = userAgent.indexOf("Opera") > -1;
  // 判断是否IE浏览器
  var isIE =
    userAgent.indexOf("compatible") > -1 &&
    userAgent.indexOf("MSIE") > -1 &&
    !isOpera;
  // 判断是否IE的Edge浏览器
  var isEdge = userAgent.indexOf("Edge") > -1;
  // 判断是否Firefox浏览器
  var isFF = userAgent.indexOf("Firefox") > -1;
  // 判断是否Safari浏览器
  var isSafari =
    userAgent.indexOf("Safari") > -1 && userAgent.indexOf("Chrome") === -1;
  // 判断Chrome浏览器
  var isChrome =
    userAgent.indexOf("Chrome") > -1 && userAgent.indexOf("Safari") > -1;

  if (isIE) {
    var reIE = new RegExp("MSIE (\\d+\\.\\d+);");
    reIE.test(userAgent);
    var fIEVersion = parseFloat(RegExp["$1"]);
    if (fIEVersion === 7) {
      return "IE7";
    } else if (fIEVersion === 8) {
      return "IE8";
    } else if (fIEVersion === 9) {
      return "IE9";
    } else if (fIEVersion === 10) {
      return "IE10";
    } else if (fIEVersion === 11) {
      return "IE11";
    } else {
      return "IE";
    }
  }
  if (isOpera) {
    alert("Opera");
  }
  if (isEdge) {
    alert("Edge");
  }
  if (isFF) {
    alert("FF");
  }
  if (isSafari) {
    alert("Safari");
  }
  if (isChrome) {
    alert("Chrome");
  }
}

//pc/移动端
function pc() {
  var t1 = new Date().getTime();
  var browser = {
    versions: (function() {
      var u = navigator.userAgent,
        app = navigator.appVersion;
      return {
        //移动终端浏览器版本信息
        trident: u.indexOf("Trident") > -1, //IE内核
        presto: u.indexOf("Presto") > -1, //opera内核
        webKit: u.indexOf("AppleWebKit") > -1, //苹果、谷歌内核
        gecko: u.indexOf("Gecko") > -1 && u.indexOf("KHTML") == -1, //火狐内核
        mobile: !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/), //是否为移动终端
        ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
        android: u.indexOf("Android") > -1 || u.indexOf("Linux") > -1, //android终端或者uc浏览器
        iPhone: u.indexOf("iPhone") > -1 || u.indexOf("Mac") > -1, //是否为iPhone或者QQHD浏览器
        iPad: u.indexOf("iPad") > -1, //是否iPad
        webApp: u.indexOf("Safari") == -1 //是否web应该程序，没有头部与底部
      };
    })(),
    language: (navigator.browserLanguage || navigator.language).toLowerCase()
  };
  var flag = false;
  //1.是否mobile，否，肯定不是。
  if (browser.versions.mobile) {
    //2.是否ios或android终端，有一个是
    if (browser.versions.android || browser.versions.ios) {
      flag = true;
    }
  }
  if (!flag) {
    console.log("为pc端");
  } else {
    console.log("为移动端");
  }
}
